package com.yami.shop.nft.common.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.util.Date;

/**
    * daw 币表
    */
@Data
@TableName(value = "tz_nft_daw")
public class NftDaw {
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 铸币申请Id
     */
    @TableField(value = "nft_apply_id")
    private Long nftApplyId;

    /**
     * 链编码
     */
    @TableField(value = "blockchain_code")
    private String blockchainCode;

    /**
     * 铸币类别链上标识Id
     */
    @TableField(value = "denom_id")
    private String denomId;

    /**
     * 币token
     */
    @TableField(value = "daw_id")
    private String dawId;

    /**
     * 交易哈希
     */
    @TableField(value = "daw_hash")
    private String dawHash;

    /**
     * 上链状态 0待上链 1 失败 2 成功 3销毁 4 文昌api 待查询上链交易结果
     */
    @TableField(value = "chain_up_status")
    private Integer chainUpStatus;

    /**
     * 使用状态 0 未使用 1已使用  2已销毁
     */
    @TableField(value = "use_status")
    private Integer useStatus;

    /**
     * 币编码
     */
    @TableField(value = "nft_code")
    private String nftCode;

    /**
     * 版本号
     */
    @TableField(value = "version")
    private Integer version;

    /**
     * 创建时间
     */
    @TableField(value = "create_time")
    private Date createTime;

    /**
     * 更新时间
     */
    @TableField(value = "update_time")
    private Date updateTime;

    /**
     * 保证幂等性，避免重复请求，保证对于同一操作发起的一次请求或者多次请求的结果是一致的；由接入方生成并自行维护、针对每个 Project ID 唯一的、不超过 64 个大小写字母、数字、-、下划线的字符串
     */
    @TableField(value = "operation_id")
    private String operationId;
}